package com.xframe.domain.e3sp.basedata;


import com.xframe.domain.BaseModel;
import com.xframe.xdal.core.annotation.*;
import com.xframe.xdal.core.constant.AutoFillType;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * @Description: 公告车型
 * @ClassName: com.xframe.domain.e3sp.basedata.AnnVehicleModel
 * @Author: xufeng
 * @CreateTime: 2024/1/1
 **/
@Data
@Accessors(chain=true)
@XTable(value = "p_t02_ann_vehicle_model", label = "公告车型")
@XSelectItem(keyName = "vehModelId",codeName = "vehModelCode",textName = "nameCn")
@XSelectItem(keyName = "vehModelId",codeName = "vehModelCode",textName = "nameEn",language = "en")
@XBelongsTo(typeName = "com.xframe.domain.e3sp.basedata.Variety",foreignKey = "varietyId", targetKey = "varietyId",as = "refVariety")
public class AnnVehicleModel extends BaseModel {

    /**
     * 公告车型ID
     */
    @AutoFill(AutoFillType.Snowflake)
    @XColumn(name = "veh_model_id", primaryKeyFlag = true,desc = "公告车型ID")
    private Long vehModelId;

    /**
     * 品种ID
     */
    @XQueryCondition
    @XColumn(name = "variety_id",desc = "品种ID")
    private Long varietyId;

    /**
     * 公告车型编码
     */
    @XQueryCondition
    @XGridTableRef
    @XColumn(name = "veh_model_code", uniqueFlag = true,desc = "公告车型编码",length = 200)
    private String vehModelCode;

    /**
     * 中文名称
     */
    @XQueryCondition
    @XGridTableRef
    @XColumn(name = "name_cn",desc = "公告车型中文名称",length = 200)
    private String nameCn;

    /**
     * 英文名称
     */
    @XColumn(name = "name_en",desc = "公告车型英文名称",length = 200,nullFlag = true)
    private String nameEn;
    /**
     * 备注
     */
    @XColumn(name = "remark",desc = "备注",length = 500,nullFlag = true)
    private String remark;
    /**
     * 品种
     */
    private Variety refVariety;
}
